package com.wlyuan.open.scanner.utils.enums.quotation;

import com.wlyuan.core.marker.NamedValue;
import com.wlyuan.core.marker.NamedValueMap;
import lombok.AccessLevel;
import lombok.Getter;
import lombok.RequiredArgsConstructor;

import java.util.Map;

/**
 * @author lijing
 * @description 合约状态
 */
@RequiredArgsConstructor(access = AccessLevel.PRIVATE)
@Getter
public enum QuotationSurchargeTypeEnum implements NamedValue<Integer> {

    GO_UPSTAIRS(1, 1, "上楼费"),
    BACK_CAR(2, 2, "倒车费"),
    PACKING(4, 3, "包装费"),
    STORAGE(5, 4, "仓储费"),
    PICK(6, 5, "提货费"),
    DELIVERY(7, 6, "送货费"),
    ON_LOAD(8, 7, "装货费"),
    OFF_LOAD(9, 8, "卸货费"),
    FORKLIFT(10, 9, "叉车费"),
    EMPTY(11, 10, "放空费"),
    RETURN(12, 11, "退返费"),
    WAIT(13, 12, "等待费"),
    TRANSFER(14, 13, "调车费"),
    EXCEPTION(15, 14, "异常费"),
    IN_WAREHOUSE(16, 15, "进仓费"),
    OTHER(3, 16, "其它"),
    //报价附加费-其它
    ADDITION_OTHER(100, 16, "其它"),
    ;

    private final Integer value;
    private final Integer newValue;
    private final String name;


    private static final Map<Integer, QuotationSurchargeTypeEnum> MAP = new NamedValueMap<>(QuotationSurchargeTypeEnum.class);

    public static QuotationSurchargeTypeEnum fromValue(Integer value) {
        return MAP.get(value);
    }


}
